-
Notifications
You must be signed in to change notification settings - Fork 4.9k
Moving Microsoft.ServiceModel.Syndication from wcf to corefx. #24202
Conversation
…eading a feed from outside, also as part of our default date parser, if it can't parse the date it will just assign a default date to avoid the crash
Added custom parsing for RSS formats. Cleaned the code. Executed CodeFormatter tool. Added test for custom parsing.
…or RSS formatting Image issue fixed and added some tests
- Change M.SM.SyndicationFeed to be a .NET Standard 2.0 library - Change tests to use official .NET Core 2.0 release from preview
What is the reason for moving it to corefx? The compat pack can pull it just as well from wcf. Right now we are trying to figure out some rules about what libraries we want to add to the corefx repo. I am not sure whether this is one or not. [EDIT] Fixing Peter's alias |
I'm curious: Why is this Microsoft.ServiceModel.Syndication and not System.ServiceModel.Syndication to match .NET Framework? |
Hi @danmosemsft The Syndication library has no dependency on WCF at all. It does not really related to WCF either. Many other these kind of libraries live in corefx repo today. Corefx repo has better build support etc. so we can be more focusing on the code and get the release out of door more efficiently. In the future, if we have a better plan for all the projects that live in corefx but does not belong to the shared framework, we certainly can follow any guidance at that time.
Hi @justinvp Yes, it was given "Microsoft" namespace while we were prototyping the port. It will be changed to "System" namespace before the release. |
Should it be changed to System before it lands in corefx (i.e. change to System as part of this PR)? |
Sounds good. Will do. |
23e0a1b
to
e35e0cb
Compare
I share @danmosemsft's concern about adding this library into corefx instead of wcf repo.
|
MinimumVisualStudioVersion = 10.0.40219.1 | ||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.ServiceModel.Syndication", "src\Microsoft.ServiceModel.Syndication.csproj", "{B615835F-C286-4FB5-A2BF-C3B967AB9EC6}" | ||
EndProject | ||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.ServiceModel.Syndication.Tests", "tests\Microsoft.ServiceModel.Syndication.Tests.csproj", "{A622B2C0-DD74-4218-9CF0-F9B2E52F4E91}" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm sure you're aware but the project references and name of this solution file should be changed from Microsoft
to System
.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The csproj currently does not build in corefx. The PR is mainly for porting the code from wcf to corefx. I planned to enable the build of the project later and fix the namespace later for better code review experience.
// See the LICENSE file in the project root for more information. | ||
|
||
|
||
namespace Microsoft.ServiceModel.Syndication |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Microsoft
-> System
(applies throughout)
|
||
namespace Microsoft.ServiceModel.Syndication | ||
{ | ||
internal static class App10Constants |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
To be consistent with the other components in corefx, the source files should be nested under their namespace components (for example, see System.Collections
' layout).
Instead of:
src/System.ServiceModel.Syndication/src/App10Constants.cs
Change to:
src/System.ServiceModel.Syndication/src/System/ServiceModel/Syndication/App10Constants.cs
(applies throughout)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, will change this later in separate PR.
Although |
Is there anything else System.ServiceModel.* in corefx? Seems pretty explainable to say "If the thing you're looking for is in System.ServiceModel, it's in the wcf repo". |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There are will be additional PRs to make this project build in corefx, clean up namespace, add more tests etc. etc. Once this PR is merged it will serve as a baseline. It will make it easier to review future PRs. We can create an issue to track any specific concerns folks may have now and address them in future PRs.
Moving Microsoft.ServiceModel.Syndication from wcf to corefx. Commit migrated from dotnet/corefx@feb04e0
The PR is moving Microsoft.ServiceModel.Syndication from wcf to corefx.